import Cookies from 'js-cookie'

const TokenKey = 'SESSION_ID'
// const WebsiteConfigKey = 'config'
const cacheType = 1 // cookie=1
// 数据缓存类型：
// 1. cookieStorage【当前浏览器可用】
// 2. sessionStorage【sessionStorage 用于临时保存同一窗口(或标签页)的数据，在关闭窗口或标签页之后将会删除这些数据，有建立websocket或需要强制控制用户登录的可选择此方式】

/**
 * 获取登录用户token
 * @returns {string}
 */
export function getToken() {
  if (cacheType === 1) {
    return Cookies.get(TokenKey)
  }
  return sessionStorage.getItem(TokenKey)
}

/**
 * 设置登录用户token
 * @param token
 */
export function setToken(token) {
  if (cacheType === 1) {
    return Cookies.set(TokenKey, token, { expires: 5 })
  }
  return sessionStorage.setItem(TokenKey, token)
}

/**
 * 移除登录用户token
 */
export function removeToken() {
  if (cacheType === 1) {
    return Cookies.remove(TokenKey)
  }
  return sessionStorage.removeItem(TokenKey)
}

/**
 * 判断用户是否登录
 * @returns {string}
 */
export function isLogin() {
  return getToken()
}
